package co.com.claro.servicio.negocio;


import co.com.claro.servicio.od.ClienteOd;
import co.com.claro.servicio.io.ClienteIo;
import org.apache.log4j.Logger;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import java.util.ResourceBundle;

/**
 * Created by IntelliJ IDEA.
 * User: Manuel Serrano
 * Date: 20/05/2010
 * Time: 02:52:00 PM
 * To change this template use File | Settings | File Templates.
 */
public class ClienteServicio implements IClienteServicio,Serializable {
    private static final Logger logger = Logger.getLogger(ClienteServicio.class);

    /** El Data Access Object
     */
    private ClienteIo clienteIo;




    /** Constructor de la clase
     */
    public ClienteServicio(){
    }





    public List<ClienteOd> obtenerClientes (String transaccionId, String accion, String valor) throws Exception {
        final String origen = "ClienteServicio.obtenerClientes";

        long time;
        List<ClienteOd> clientes = null;

        try {

            logger.info(ResourceBundle.getBundle("mensajeslogs").getString("mensaje.inicio.ser")+ClienteServicio.class+" | "+origen);

            time = System.currentTimeMillis ();

            clientes=new ArrayList<ClienteOd>();
            clientes = getClienteIo().obtenerClientes(transaccionId,accion,valor);

            time = System.currentTimeMillis () - time;

            logger.info(ResourceBundle.getBundle("mensajeslogs").getString("mensaje.exitos.ser")+ClienteServicio.class+" | "+origen);
        }
        catch (Exception ex) {
            logger.error(ex);
        }

        return (clientes);
    }

    public List<String> obtenerClientesAutocompletar (String transaccionId, String valor) throws Exception {
        final String origen = "ClienteServicio.obtenerClientesAutocompletar";

        long time;
        List<String> autocompletar = null;

        try {

            logger.info(ResourceBundle.getBundle("mensajeslogs").getString("mensaje.inicio.ser")+ClienteServicio.class+" | "+origen);

            time = System.currentTimeMillis ();

            autocompletar=new ArrayList<String>();
            autocompletar = getClienteIo().obtenerClientesAuto(transaccionId,valor);

            time = System.currentTimeMillis () - time;

            logger.info(ResourceBundle.getBundle("mensajeslogs").getString("mensaje.exitos.ser")+ClienteServicio.class+" | "+origen);
        }
        catch (Exception ex) {
            logger.error(ex);
        }

        return (autocompletar);
    }





    public ClienteIo getClienteIo() {
        return clienteIo;
    }

    public void setClienteIo(ClienteIo clienteIo) {
        this.clienteIo = clienteIo;
    }
}
